package bgu.dcr.tp.api;

/**
 * a behavior defines actions on each simulation tick.
 * every behavior is defined with requirements of data.
 * @author Shl
 */
public interface Behavior {
    
    /**
     * executes this behavior.
     */
    public void behave(int id, World world) throws Throwable;     
    
    public Class[] getRequirement();
    
    String getName();
    
}
